home *** CD-ROM | disk | FTP | other *** search
/ AmigActive 22 / AACD 22.iso / AACD / Magazine / SFX / sfx-data / _rexx / Pan.rexx < prev    next >
Encoding:
OS/2 REXX Batch file  |  1998-07-10  |  1.4 KB  |  56 lines

  1. /* SFX Pan */
  2.  
  3. OPTIONS RESULTS
  4. ADDRESS REXX_SFX
  5.  
  6. SFX_GetActiveBuffer
  7. buf1=RESULT
  8. IF buf1>-1 THEN DO
  9.     SFX_GetChannels buf1
  10.     cha=RESULT
  11.     IF cha=1 THEN DO
  12.         SFX_SelOperator 'ConvertChannels'                    /* make Stereo */
  13.         SFX_SetOperatorParam 'ConvertChannels' 'Dest' '1'
  14.         SFX_ProcessSample buf1
  15.         IF RC=0 THEN buf1=RESULT
  16.         ELSE buf1=-2
  17.         buf2=-1
  18.         IF buf1>-1 THEN DO                            /* RampUp first channel */
  19.             SFX_SelOperator 'Amplify'
  20.             SFX_SetOperatorParam 'Amplify' 'Wrap' '0'
  21.             SFX_SetOperatorParam 'Amplify' 'P1ModShape' 'Linear'
  22.             SFX_DisableChannel buf1 1
  23.             SFX_SetOperatorParam 'Amplify' 'AmpfS' '0.0'
  24.             SFX_SetOperatorParam 'Amplify' 'AmpfE' '1.0'
  25.             SFX_ProcessSample buf1
  26.             IF RC=0 THEN buf2=RESULT
  27.             ELSE buf2=-2
  28.             SFX_RemoveBuffer buf1
  29.         END
  30.         ELSE SFX_Message '"Operator ConvertChannels failed !"'
  31.         buf1=-1
  32.         IF buf2>-1 THEN DO                            /* RampDown second channel */
  33.             SFX_EnableChannel buf2 1
  34.             SFX_DisableChannel buf2 0
  35.             SFX_SetOperatorParam 'Amplify' 'AmpfS' '1.0'
  36.             SFX_SetOperatorParam 'Amplify' 'AmpfE' '0.0'
  37.             SFX_ProcessSample buf2
  38.             IF RC=0 THEN buf1=RESULT
  39.             ELSE buf1=-2
  40.             SFX_RemoveBuffer buf2
  41.         END
  42.         ELSE Message '"Operator Amplify failed !"'
  43.         IF buf1>-1 THEN DO
  44.             SFX_EnableChannel buf1 0
  45.             SFX_RedrawBuffer buf1
  46.             SFX_SetActiveBuffer buf1
  47.             SFX_CleanUp 0
  48.         END
  49.         ELSE SFX_Message '"Operator Amplify failed !"'
  50.     END
  51.     ELSE SFX_Message '"Mono source required !"'
  52. END
  53. ELSE SFX_Message '"No sample to operate on !"'
  54. SFX_Activate
  55. EXIT
  56.